﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Control.Catalogo;
using Entidades.Catalogo;
using Navegador.Vistas;
using Entidades.Consultas.Personalizadas;

namespace SICOIA.UserControls.Consultas
{
    public partial class uCConsultarDetalleObra : ViewController
    {
        private CtrlSolicitudTrabajosRealizar ctrl = null;
        EntUsuario usuario = new EntUsuario();
        protected void Page_Load(object sender, EventArgs e)
        {
            if ((EntUsuario)Session["UserPemex"] == null)
                Response.Write("<script>parent.window.open('../Marcos/EndPEMEX.aspx','_top')</script>");
            else
                usuario = (EntUsuario)Session["UserPemex"];

            if (!IsPostBack)
            {
                ConsultarObras();
            }
        }

        private void AsignarValores()
        {
           cve_estatus_obra.Value = Request.Params["cve_estatus_obra"] != null ? Request.Params["cve_estatus_obra"].ToString() : cve_estatus_obra.Value;
           cveSolicitante.Value = Request.Params["cve_solicitante"] != null ? Request.Params["cve_solicitante"].ToString() : cveSolicitante.Value;
           prioritaria.Value = Request.Params["prioritaria"] != null ? Request.Params["prioritaria"].ToString() : prioritaria.Value;
           cve_usuario.Value = Request.Params["cve_usuario"] != null ? Request.Params["cve_usuario"].ToString() : cve_usuario.Value;
            
        }
        private void ConsultarObras()
        {
            ctrl = new CtrlSolicitudTrabajosRealizar();
            List<EntObraConDetalle> lista =
            ctrl.CriteriosObtenerDetalleGrafica(
            Request.Params["cve_usuario"] != null ? Request.Params["cve_usuario"].ToString() : cve_usuario.Value,
            Request.Params["cve_estatus_obra"] != null ? Request.Params["cve_estatus_obra"].ToString() : cve_estatus_obra.Value,
            Request.Params["cve_solicitante"] != null ? Request.Params["cve_solicitante"].ToString() : cveSolicitante.Value,
            Request.Params["prioritaria"] != null ? Request.Params["prioritaria"].ToString() : prioritaria.Value,
            Request.Params["cadenaBuscar"] != null ? Request.Params["cadenaBuscar"].ToString() : txtDescripcion.Text);

            grdObras.DataSource = lista;
            grdObras.DataBind();

            GuardarEstado("detalleObras", lista);
            AsignarValores();

            lblTotal.Text = lista.Count.ToString();
        }

        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            ConsultarObras();
        }

        protected void grdSoliciudes_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView gv = (GridView)sender;
            gv.PageIndex = e.NewPageIndex;

            grdObras.DataSource = (List<EntObraConDetalle>)ObtenerEstado("detalleObras");
            grdObras.DataBind();
        }

        protected void grdObras_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                string cve_obra = e.Row.Cells[0].Text;

                e.Row.Attributes.Add("onMouseOver", "this.style.cursor = 'hand';this.style.backgroundColor = 'yellow';");
                e.Row.Attributes.Add("onMouseOut", "this.style.backgroundColor = 'white';");
                string path = "../Marcos/ProxyUserControls.aspx?Url=DetalleGraficaObraAfectado&cve_obra=" + cve_obra;
                e.Row.Attributes["onclick"] = " return SelectedObjRptPopUp('" + path + "')";
            }
        }
    }


}